package cn.lg.soar.boot.fc.entity.vo;

import com.alibaba.excel.annotation.ExcelProperty;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * 财务表
 * @author ZhuanZ（无密码）
 * @since 2025-01-18
 * 开源项目：https://gitee.com/lgx1992/lg-soar 求star！请给我star！请帮我点个star！
 */
@Data
public class FinanceVo {

    /** 记录ID */
    @ApiModelProperty(value = "主键")
    private Long id;

    /** 表单提交ID */
    @ApiModelProperty(value = "表单提交ID")
    private Long formResultId;

    /** 租房ID */
    @ApiModelProperty(value = "租房ID")
    private Long tenancyId;

    /** 用户ID */
    @ApiModelProperty(value = "用户ID")
    private Long userId;

    /** 房间ID */
    @ApiModelProperty(value = "房间ID")
    private Long roomId;

    /** 租房方式(0-整租 1-合租) */
    @ApiModelProperty(value = "租房方式(0-整租 1-合租)")
    private Integer tenancyWay;

    /** 合租ID */
    @ApiModelProperty(value = "合租ID")
    private Long leaseId;

    /** 合同ID */
    @ApiModelProperty(value = "合同ID")
    private Long contractId;

    /** 合同编号 */
    @ApiModelProperty(value = "合同编号")
    private String contractCode;

    /** 付费方式(0-月付 1-季付 2-半年付 3-年付 4-其他) */
    @ApiModelProperty(value = "付费方式(0-月付 1-季付 2-半年付 3-年付 4-其他)")
    private Integer payWay;

    /** 是否续租(0-初次申请 1-续租) */
    @ApiModelProperty(value = "是否续租(0-初次申请 1-续租)")
    private Integer isContinue;

    /** 账单金额 */
    @ApiModelProperty(value = "账单金额")
    private BigDecimal billAmount;

    /** 已缴金额 */
    @ApiModelProperty(value = "已缴金额")
    private BigDecimal payAmount;

    /** 未缴金额 */
    @ApiModelProperty(value = "未缴金额")
    private BigDecimal unpaidAmount;

    /** 缴费时间 */
    @ApiModelProperty(value = "缴费时间")
    private LocalDateTime payTime;

    /** 付款方式(0-微信 1-支付宝 2-刷卡 3-现金) */
    @ApiModelProperty(value = "付款方式(0-微信 1-支付宝 2-刷卡 3-现金)")
    private Integer payMode;

    /** 申请时间 */
    @ApiModelProperty(value = "申请时间")
    private LocalDateTime applyTime;

    /** 审核时间 */
    @ApiModelProperty(value = "审核时间")
    private LocalDateTime examineTime;

    /** 入住时间 */
    @ApiModelProperty(value = "入住时间")
    private LocalDateTime moveTime;

    /** 到租时间 */
    @ApiModelProperty(value = "到租时间")
    private LocalDateTime endTime;

    /** 财务类型(0-收费 1-退费) */
    @ApiModelProperty(value = "财务类型(0-收费 1-退费)")
    private Integer financeType;

    /** 收费类型(0-首租 1-续租 2-物业费 3-水费 4-电费 5-取暖费 6-其他) */
    @ApiModelProperty(value = "收费类型(0-首租 1-续租 2-物业费 3-水费 4-电费 5-取暖费 6-其他)")
    private Integer costType;

    /** 是否缴完(0-否 1-是) */
    @ApiModelProperty(value = "是否缴完(0-否 1-是)")
    private Integer isPaid;

    /** 是否结算(0-否 1-是) */
    @ApiModelProperty(value = "是否结算(0-否 1-是)")
    private Integer isSettlement;

    /** 附件 */
    @ApiModelProperty(value = "附件")
    private String attachment;

    /** 扩展字段1 */
    @ApiModelProperty(value = "扩展字段1")
    private String extend1;

    /** 扩展字段2 */
    @ApiModelProperty(value = "扩展字段2")
    private String extend2;

    /** 扩展字段3 */
    @ApiModelProperty(value = "扩展字段3")
    private String extend3;

    @ApiModelProperty(value = "用户姓名")
    private String userName;

    @ApiModelProperty(value = "房间信息")
    private String roomInfo;

    /** 房屋面积 */
    @ApiModelProperty(value = "房屋面积")
    private String area;

    /** 居室 */
    @ApiModelProperty(value = "居室")
    private String livingRoom;

    /** 朝向 */
    @ApiModelProperty(value = "朝向")
    private String orient;

    /** 产权证号 */
    @ApiModelProperty(value = "产权证号")
    private String ownershipCode;

    /** 联系人 */
    @ApiModelProperty(value = "联系人")
    private String contacts;

    /** 联系电话 */
    @ApiModelProperty(value = "联系电话")
    private String phone;

}
